1. Field of the Invention
The present invention relates generally to calibration of components of a robot-cell including an industrial robot (robot), the tool center point of the end-effector (TCP) attached to the robot""s flange, and additionally the fixture or positioner holding the production part upon which the robot performs some operation. Further, a preferred embodiment of the present invention relates to the automatic/xe2x80x9con-linexe2x80x9d calibration of a robot and its TCP based on the measurements recorded by a sensor after contact or interception with random points along the three-dimensional contour of the end-effector close to the TCP.
2. Description of the Prior Art
Systems which employ the current state of technology for calibration of a robot and its TCP consist of two basic types: (1) xe2x80x9ctarget-basedxe2x80x9d systems which can identify the robot, the fixture and TCP parameters but require the operator to attach one or more measurement target(s) at or near the physical location of the TCP; and (2) xe2x80x9csearch/feedbackxe2x80x9d systems which identify only TCP parameters but do not require operator intervention.
xe2x80x9cTarget-basedxe2x80x9d systems generally offer the benefit of allowing identification of robot parameters as well as fixture and TCP parameters. Traditionally these systems include an external measurement system including, but not limited to, a laser interferometer, a photogrammetry system, a theodolite system, or an optomechanical system with one or more measurement cables. In order to acquire measurement data used in the calibration process, each of these systems requires attachment of a targetxe2x80x94or in the case of the optomechanical systems an adaptorxe2x80x94to one or more points at or near the physical TCP to be identified. Cost of the external measurement system and the requirement for operator intervention are the primary reasons that xe2x80x9ctarget-basedxe2x80x9d systems are not considered suitable for use as an automated/xe2x80x9con-linexe2x80x9d solution for identification of robot and TCP parameters.
In terms of suitability for use as an automated calibration solution, xe2x80x9csearch/feedbackxe2x80x9d systems possess a clear advantage over xe2x80x9ctarget-basedxe2x80x9d systemsxe2x80x94they do not require attachment of targets or other modification of the end-effector itselfxe2x80x94thus eliminating the need for operator intervention in the calibration process. These systems traditionally include a xe2x80x9clow resolutionxe2x80x9d sensorxe2x80x94as low as xe2x80x9c1 bitxe2x80x9d (i.e. xe2x80x9con/offxe2x80x9d or xe2x80x9cbinaryxe2x80x9d) as is the case in either an optical beam, a proximity switch, or an electric contact, for example. As the TCP either breaks the optical beam or makes contact with the proximity switch, the robot position reported by the controller is recorded for use in the TCP identification process. As a consequence, the speed at which the robot moves toward either the optical beam or the proximity switch is inversely related to the accuracy of the identification process (i.e. a very slow robot speed is required to record highly accurate robot position information at the moment the TCP breaks the optical beam, for example). Furthermore, even though these xe2x80x9csearch/feedbackxe2x80x9d systems do not require specific measurement targets (as do the xe2x80x9ctarget-basedxe2x80x9d systems), they still require the end-effector to intercept or contact the measurement sensor at specific and pre-determined locations with respect to the TCP. For that reason, the robot needs to approach the sensor in a methodical manner in order to xe2x80x9csearchxe2x80x9dxe2x80x94through feedbackxe2x80x94for the appropriate locations along the end-effector for the measurement sensor to intercept or contact (also referred to as xe2x80x9cprofilingxe2x80x9d of the end-effector).
Furthermore, these xe2x80x9csearch/feedbackxe2x80x9d systems often only identify TCP parametersxe2x80x94they do not identify robot-related parameters. Moreover, these xe2x80x9csearch/feedbackxe2x80x9d systems possess several significant limitations as they typically require: (1) an initial approximation of the TCP values; (2) significant integration with the robot controller to establish a feedback loop which causes the TCP, for example, to break the optical beam several times; and (3) a significant amount of time for the robot to drive the TCP, for example, to break the optical beam several times.
Finally, the resulting accuracy of the TCP parameters identified with the xe2x80x9csearch/feedbackxe2x80x9d systems depends directly upon the following factors: (1) the extent to which the robot itself is already properly xe2x80x9ccalibratedxe2x80x9d (i.e. such xe2x80x9clow resolutionxe2x80x9d methods rely on the robot reporting its absolute position accurately in order to perform calibration of the TCP with accuracy); and (2) typically also the extent to which the TCP maintains a specific (and assumed upfront) orientation relative to the optical beam, proximity switch, or electrical contact.
In contrast to the xe2x80x9ctarget-basedxe2x80x9d and xe2x80x9csearch/feedbackxe2x80x9d systems described above, the present invention involves a method for identification of both robot and TCP parameters and additionally the location of the measurement sensor, thus also either the location of the stationary fixture or other parameters of the multi-axis positioner. Further, in a preferred embodiment of the present invention, the robot and end-effector can be recalibrated quickly during operation, even between cycles of a production robot programxe2x80x94without operator intervention. Moreover, the present invention eliminates several obstacles presented by some xe2x80x9csearch/feedbackxe2x80x9d systems as the present invention: (1) can eliminate the need for an initial approximation of the TCP values; (2) can eliminate the need for a complex feedback loop (i.e. it can be controller independent, thereby, also reducing the amount of time required to perform the complete process); and (3) can reduce restrictions upon the motion of the TCP (i.e. orientation of contact with xe2x80x9con/offxe2x80x9d sensor). Finally, the present invention eliminates the dependency upon proper xe2x80x9cmasteringxe2x80x9d of the robot as the xe2x80x9ctruexe2x80x9d joint offsets (or even more robot parameters if needed) are identified in the process of automatically identifying these and other robot parameters.
The present invention achieves these advantages by providing a method and apparatus for calibrating the robot and end-effector together with the location of the measurement sensor if needed (and therefore potentially the fixture on which the sensor(s) is or are located) based upon a mathematical description of the 3D contour of the tip of the end-effector. Further, in contrast to the xe2x80x9csearch/feedbackxe2x80x9d systems, the present invention proposes as one embodiment the use of a xe2x80x9chigh-resolutionxe2x80x9d displacement sensor rather than a xe2x80x9clow resolutionxe2x80x9d sensor (even as low as xe2x80x9cbinaryxe2x80x9d or xe2x80x9con/offxe2x80x9d) such as an optical beam or a proximity switch for example. A xe2x80x9chigh-resolutionxe2x80x9d sensor allows the robot to stop literally anywhere within the sensor""s measurement range without the need for robot controller feedback, in turn allowing higher robot speeds and thus shorter cycle times.
Once the 3D contour of the tip of the end-effector has been described relative to the location of the TCP, the calibration system allows identification of both robot and TCP parameters (together with the location of the measurement sensor if needed, and therefore potentially the fixture and/or positioner) with only two additional pieces of information: (1) a set of measurements recorded by the measurement sensor following contact or interception with several points along the contour of the tip of the end-effector; and (2) the corresponding robot program which caused the tip of the end-effector to make contact with or intercept the measurement sensor.